- 6 minutes to read

Manually install or update Nodinite Monitoring Agent databases

On this page, you will learn how to install and update Nodinite Monitoring Databases manually.

NOTE:You must use SqlPackage version 161 or later! Make sure to match the Nodinite System Parameter accordingly.

The following Monitoring Agents use a Monitoring Database** to improve performance and/or provide long-term statistics:

Use the account for the Nodinite Monitoring Agent to perform database installation and updates. If you are not performing the steps in this guide with that service account, you must at least have the DB_Creator, DiskAdmin and Security Admin right, or the sysadmin right on the SQL Server instance to install or update the monitoring database.

Verified Topic
Software Requirements
Windows rights
Database rights
Firewall

Software Requirements

This functionality requires that the Microsoft Data-tier Applications SqlPackage.exe is installed on the server hosting the Monitoring Agent. Download it from either our download page or directly from Microsoft.

Product
Windows Server Windows Server Windows version as determined by the Monitoring Agent
.NET Framework .NET Framework 4.x or later Different Monitoring Agents may have different requirements
SQLPackage.exe Data-tier Applications No license required

What Windows rights does the installation and update process require?

The Monitoring Agent runs as a Windows Service and is responsible for updating existing databases (runs on each start). The Service account (may be different for different Monitoring Agents) must have local rights on the Windows Server. In addition, the Service account must also have the proper SQL Rights on the SQL instance with the Monitoring Database; see the next section.

All Monitoring Agents requires the privileges described on the 'Windows Service Account' page.

What SQL Rights does the installation and update process require?

On each startup, the Nodinite Monitoring Agent update the Monitoring Database if a new version of the model exists. The identity for the Windows account running the Service is the one in use for the update operation.

graph LR subgraph "SQL Server" roDatabase(fal:fa-database Monitoring database) end subgraph "Application Server" roMA(fal:fa-hdd Monitoring Agent) --- roDatabase end

Required SQL Server rights

On the SQL Server instance with the Monitoring Database, the account must have the following User Mapping (assign manually after installing the database)

  • db_owner - Assign the rights to change the database in any way (for example, if operational, the database get the updates automatically with newer versions of the monitoring agent)

What Firewall settings are required by the installation and update process?

For the Monitoring agents to be operational, specific ports must be open for communication. As Nodinite and Windows are highly configurable, the actual ports in use may differ from the defaults described next.

  • TCP Ports between Monitoring Agent Windows Service and SQL Server instance with Monitoring Database
Port Name Inbound Outbound TCP UDP Comment
53 DNS The Agent needs to know where your other servers/services are (can sometimes optionally be solved with user-defined entries in the hosts file in each Windows server instance), review the following 'Microsoft' user guide
88 Kerberos Review 'Microsoft Kerberos' user guide
135 DTC/RPC This port is shared between many Windows Services
1433/... SQL Server instance ports (multiple) Depends on policies and settings on target environment. Please review the How to configure RPC dynamic port allocation to work with firewalls user guide

How do I install a Monitoring Database?

There are two ways of installing a new Monitoring Database:

  1. Executing the database installer (.exe) manually

    You must have set a proper configuration for the database in the configuration file before launching the installer

  2. Manually install the monitoring database using the %NAME%.DACPAC file

1. Executing the database installer manually using the Database Installer (.exe)

Any update requires the Microsoft DACFRAMEWORK binaries to be installed; please review the SQL Server Package (DACPAC) user guide

Before you execute the installer, you must provide information about the SQL Server instance and the name of the monitoring database, this connectivity information is set using the MonitorAgentConnectionString property either using Remote Configuration or directly editing the configuration file.

Use Notepad++, or run notepad with elevated privileges:

  1. Open the Settings.json file
  2. Set the SSL options to use by the Agent connecting with the target SQL Server.

Connect without encryption: /SourceEncryptConnection=False or /TargetEncryptConnection=False
Trust server certificate: /SourceTrustServerCertificate=True or /TargetTrustServerCertificate=True

The following are the Nodinite default values: in use by the SQL Server Package (DACPAC) to install or update the Monitoring database.

...

"SourceEncryptConnection": true,
"SourceTrustServerCertificate": false,
"TargetEncryptConnection": true,
"TargetTrustServerCertificate": true,
...

  1. Set the appropriate MonitorAgentConnectionString (See ConnectionStrings.com for additional examples)
...
"MonitorAgentConnectionString": "Server=localhost;Database=Nodinite_MonitorAgent_%AgentName%_Test;Integrated Security=SSPI;Connection Timeout=60;TrustServerCertificate=True",
...
  • You may want to alter the TrustServerCertificate property according to your user preferences and policies, please review the TrustServerCertificate Property user guide for additional information.

NOTE: Nodinite uses the non-default value True.

If you are using a named instance, you must escape the backslash.

NOTE: Named instances must be JSON formatted (use 2 backslashes for configuration\\) for example, Server=localhost\\instancename

  1. Run the Nodinite.Installer.MonitorAgent.%AgentName%Database.exe using an account that has SQL rights to create new databases

Agent database install

  1. Set SQL database rights as described on this page

2. Manually installing the monitoring database using the .DACPAC file

Follow the guide below to manually install the monitoring database using the .DACPAC file:

  1. Copy the %NAME%.DACPAC file from the Monitoring Agent installation folder to a local disk of the SQL Server instance
  2. From SSMS on the SQL server instance, choose to "Deploy Data Tier Application"
    • Follow the steps in the Deploy Data-tier Wizard...

    If you host multiple monitoring databases on the same SQL Server instance, make sure to provide a uniquely identifiable name for the database

  3. Set SQL database rights as described on this page

How do I update a Monitoring Database manually?

To update the database manually, follow the steps below.

Usually, you do not need to perform the update manually since the Monitoring Agent updates the database during the startup of the service, if it has the appropriate rights. You can find information about the outcome of such operations in the diagnostic files.

1. Executing database installer manually using the Database Installer (.exe)

  1. Please review the configuration steps in the install section and adjust the configuration file before you continue.
  2. Run the Nodinite.Installer.MonitorAgent.%AgentName%Database.exe, using the account that has SQL rights to create new databases

Agent database update

2. Manually updating the monitoring database using the .DACPAC file

Follow the guide below to update the monitoring database using the %NAME%.DACPAC file manually:

  1. Copy the %NAME%.DACPAC file from the folder where the Monitoring Agent is installed to a local disk of the target SQL Server instance.
  2. From SSMS on the SQL server instance where to update the database, choose to "Update Data Tier Application".
    • Follow the steps in the Update Data-tier Wizard...

    If you host multiple monitoring databases on the same SQL Server instance, make sure to select the correct database for the update operation.

Next Step

  • First, make sure to backup the system regularly.
  • Then, use the Nodinite Database Monitoring Agent to monitor the size of the Monitoring Database is within your user-defined thresholds.